package org.jeecg.modules.sggg.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 肿瘤筛查
 * @Author: jeecg-boot
 * @Date:   2023-05-24
 * @Version: V1.0
 */
@Data
@TableName("sg_tumor")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sg_tumor对象", description="肿瘤筛查")
public class SgTumor implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private java.lang.String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private java.util.Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private java.lang.String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private java.lang.String sysOrgCode;
	/**居民id*/
	@Excel(name = "居民id", width = 15)
    @ApiModelProperty(value = "居民id")
    private java.lang.String memberId;
	/**调查员*/
	@Excel(name = "调查员", width = 15)
    @ApiModelProperty(value = "调查员")
    private java.lang.String investigator;
	/**录入员*/
	@Excel(name = "录入员", width = 15)
    @ApiModelProperty(value = "录入员")
    private java.lang.String keyboarder;
	/**民族*/
	@Excel(name = "民族", width = 15)
    @ApiModelProperty(value = "民族")
    private java.lang.String nationality;

    @ApiModelProperty(value = "民族")
    private java.lang.String minzu;


	/**非本市户籍*/
	@Excel(name = "非本市户籍", width = 15)
    @ApiModelProperty(value = "非本市户籍")
    private java.lang.Integer censusRegister;
	/**十足年龄*/
	@Excel(name = "十足年龄", width = 15)
    @ApiModelProperty(value = "十足年龄")
    private java.lang.Integer correctAge;
	/**患有过癌症或接受过癌症治疗*/
	@Excel(name = "患有过癌症或接受过癌症治疗", width = 15)
    @ApiModelProperty(value = "患有过癌症或接受过癌症治疗")
    private java.lang.Integer cancer;
	/**患有某些可引发生命危险的疾病，如严重的心脑血管疾病、 严重肾病、肝硬化等*/
	@Excel(name = "患有某些可引发生命危险的疾病，如严重的心脑血管疾病、 严重肾病、肝硬化等", width = 15)
    @ApiModelProperty(value = "患有某些可引发生命危险的疾病，如严重的心脑血管疾病、 严重肾病、肝硬化等")
    private java.lang.Integer dangerousDisease;
	/**存在身体或精神方面的问题而无法完成知情同意程序*/
	@Excel(name = "存在身体或精神方面的问题而无法完成知情同意程序", width = 15)
    @ApiModelProperty(value = "存在身体或精神方面的问题而无法完成知情同意程序")
    private java.lang.Integer know;
	/**吸烟*/
	@Excel(name = "吸烟", width = 15)
    @ApiModelProperty(value = "吸烟")
    private java.lang.Integer smoking;
	/**戒烟已持续年数*/
	@Excel(name = "戒烟已持续年数", width = 15)
    @ApiModelProperty(value = "戒烟已持续年数")
    private java.lang.Integer quittingTime;
	/**戒烟的原因*/
	@Excel(name = "戒烟的原因", width = 15)
    @ApiModelProperty(value = "戒烟的原因")
    private java.lang.Integer quittingReasons;
	/**戒烟原因说明*/
	@Excel(name = "戒烟原因说明", width = 15)
    @ApiModelProperty(value = "戒烟原因说明")
    private java.lang.String quittingReasonsText;
	/**多少岁开始养成规律吸烟的习惯*/
	@Excel(name = "多少岁开始养成规律吸烟的习惯", width = 15)
    @ApiModelProperty(value = "多少岁开始养成规律吸烟的习惯")
    private java.lang.Integer smokingHabit;
	/**早上醒来后多久开始吸第一支烟*/
	@Excel(name = "早上醒来后多久开始吸第一支烟", width = 15)
    @ApiModelProperty(value = "早上醒来后多久开始吸第一支烟")
    private java.lang.Integer getToSmoke;
	/**烟草产品*/
	@Excel(name = "烟草产品", width = 15)
    @Dict(dicCode = "cigarette_type")
    @ApiModelProperty(value = "烟草产品：1机制卷烟 2手卷烟 3烟斗 4雪茄 5水烟")
//    @ApiModelProperty(value = {"1","2","3","4","5"},example = {"机制卷烟","手卷烟","烟斗","雪茄","水烟"})
    private java.lang.Integer cigaretteType;
	/**其他香烟产品*/
	@Excel(name = "其他香烟产品", width = 15)
    @ApiModelProperty(value = "其他香烟产品")
    private java.lang.String cigaretteTypeText;
	/**吸烟年限*/
	@Excel(name = "吸烟年限", width = 15)
    @ApiModelProperty(value = "吸烟年限")
    private java.lang.Integer smokingYears;
	/**每天吸烟支数*/
	@Excel(name = "每天吸烟支数", width = 15)
    @ApiModelProperty(value = "每天吸烟支数")
    private java.lang.Integer smokingNums;
	/**家人或者同事是否吸烟*/
	@Excel(name = "家人或者同事是否吸烟", width = 15)
    @ApiModelProperty(value = "家人或者同事是否吸烟")
    private java.lang.Integer familySmoking;
	/**家人或同事吸烟年限*/
	@Excel(name = "家人或同事吸烟年限", width = 15)
    @ApiModelProperty(value = "家人或同事吸烟年限")
    private java.lang.Integer familyQuittingTime;
	/**共同居住或工作年数*/
	@Excel(name = "共同居住或工作年数", width = 15)
    @ApiModelProperty(value = "共同居住或工作年数")
    private java.lang.Integer liveYear;
	/**与吸烟者关系*/
	@Excel(name = "与吸烟者关系", width = 15)
    @ApiModelProperty(value = "与吸烟者关系")
    private java.lang.String smokerRelationship;
	/**其他家庭成员人数*/
	@Excel(name = "其他家庭成员人数", width = 15)
    @ApiModelProperty(value = "其他家庭成员人数")
    private java.lang.Integer smokerRelationshiFamily;
	/**其他同事人数*/
	@Excel(name = "其他同事人数", width = 15)
    @ApiModelProperty(value = "其他同事人数")
    private java.lang.Integer smokerRelationshiColleague;
	/**吸烟者年限*/
	@Excel(name = "吸烟者年限", width = 15)
    @ApiModelProperty(value = "吸烟者年限")
    private java.lang.Integer smokerYears;
	/**每天吸烟支数*/
	@Excel(name = "每天吸烟支数", width = 15)
    @ApiModelProperty(value = "每天吸烟支数")
    private java.lang.Integer smokerNums;
	/**患有肺气肿*/
	@Excel(name = "患有肺气肿", width = 15)
    @ApiModelProperty(value = "患有肺气肿")
    private java.lang.Integer emphysema;
	/**从事工作是否暴露指定物质*/
	@Excel(name = "从事工作是否暴露指定物质", width = 15)
    @ApiModelProperty(value = "从事工作是否暴露指定物质")
    private java.lang.Integer substance;
	/**级亲属 (父母、兄弟姐妹或子女) 是否患有癌症*/
	@Excel(name = "级亲属 (父母、兄弟姐妹或子女) 是否患有癌症", width = 15)
    @ApiModelProperty(value = "级亲属 (父母、兄弟姐妹或子女) 是否患有癌症")
    private java.lang.Integer cancerRelatives;
	/**一级亲属患有癌症是否是肺癌*/
	@Excel(name = "一级亲属患有癌症是否是肺癌", width = 15)
    @ApiModelProperty(value = "一级亲属患有癌症是否是肺癌")
    private java.lang.Integer cancerRelativesLungCancer;
	/**胸部或背部有任何金属植入物*/
	@Excel(name = "胸部或背部有任何金属植入物", width = 15)
    @ApiModelProperty(value = "胸部或背部有任何金属植入物")
    private java.lang.Integer metalImplant;
	/**是否有在家进行氧疗*/
	@Excel(name = "是否有在家进行氧疗", width = 15)
    @ApiModelProperty(value = "是否有在家进行氧疗")
    private java.lang.Integer oxygenTherapy;
	/**过去 18 个月内做过胸部 CT 检查*/
	@Excel(name = "过去 18 个月内做过胸部 CT 检查", width = 15)
    @ApiModelProperty(value = "过去 18 个月内做过胸部 CT 检查")
    private java.lang.Integer ctExam;
	/**是否手术切除过肺组织 (包括全肺、肺叶、亚肺叶、肺段、楔形，不 包括肺穿刺、肺活检)*/
	@Excel(name = "是否手术切除过肺组织 (包括全肺、肺叶、亚肺叶、肺段、楔形，不 包括肺穿刺、肺活检)", width = 15)
    @ApiModelProperty(value = "是否手术切除过肺组织 (包括全肺、肺叶、亚肺叶、肺段、楔形，不 包括肺穿刺、肺活检)")
    private java.lang.Integer excision;
	/**是否有过不明原因的体重减轻且超过 5 公斤*/
	@Excel(name = "是否有过不明原因的体重减轻且超过 5 公斤", width = 15)
    @ApiModelProperty(value = "是否有过不明原因的体重减轻且超过 5 公斤")
    private java.lang.Integer loseWeight;
	/**是否出现过咯血症状*/
	@Excel(name = "是否出现过咯血症状", width = 15)
    @ApiModelProperty(value = "是否出现过咯血症状")
    private java.lang.Integer hemoptysis;
	/**在过去 2 个月内，您是否因肺炎或急性呼吸道感染而进行过抗生素治 疗*/
	@Excel(name = "在过去 2 个月内，您是否因肺炎或急性呼吸道感染而进行过抗生素治 疗", width = 15)
    @ApiModelProperty(value = "在过去 2 个月内，您是否因肺炎或急性呼吸道感染而进行过抗生素治 疗")
    private java.lang.Integer antibiotic;
	/**您现在是否正在参与肺癌筛查相关的研究 (助您戒烟的研究除外)*/
	@Excel(name = "您现在是否正在参与肺癌筛查相关的研究 (助您戒烟的研究除外)", width = 15)
    @ApiModelProperty(value = "您现在是否正在参与肺癌筛查相关的研究 (助您戒烟的研究除外)")
    private java.lang.Integer lungCancerResearch;
	/**当您平躺时，双臂是否无法高举过头？*/
	@Excel(name = "当您平躺时，双臂是否无法高举过头？", width = 15)
    @ApiModelProperty(value = "当您平躺时，双臂是否无法高举过头？")
    private java.lang.Integer raiseArm;
	/**您是否不愿意在正式进入研究前签署《附件 1.2 知情同意书》？*/
	@Excel(name = "您是否不愿意在正式进入研究前签署《附件 1.2 知情同意书》？", width = 15)
    @ApiModelProperty(value = "您是否不愿意在正式进入研究前签署《附件 1.2 知情同意书》？")
    private java.lang.Integer signFile;
	/**其他需要说明的情况 1是 2否*/
	@Excel(name = "其他需要说明的情况 1是 2否", width = 15)
    @ApiModelProperty(value = "其他需要说明的情况 1是 2否")
    private java.lang.Integer other;
	/**如果其他情况说明选择1则需要输入此项*/
	@Excel(name = "如果其他情况说明选择1则需要输入此项", width = 15)
    @ApiModelProperty(value = "如果其他情况说明选择1则需要输入此项")
    private java.lang.String otherText;
	/**高风险评估和纳入 1.I 级高风险人群 2.II 级高风险人群 3.其他*/
	@Excel(name = "高风险评估和纳入 1.I 级高风险人群 2.II 级高风险人群 3.其他", width = 15)
    @ApiModelProperty(value = "高风险评估和纳入 1.I 级高风险人群 2.II 级高风险人群 3.其他")
    private java.lang.Integer highRisk;
    @ApiModelProperty(value = "螺旋CT记录的 ctno 一条调查对应一条记录")
    private String ldctNo;
}
